/**
 * 
 */
package ar.utn.frgp.banco.front.action.reportes;

import java.util.List;

import ar.utn.frgp.banco.entity.Cuenta;
import ar.utn.frgp.banco.exceptions.PersonalisedException;
import ar.utn.frgp.banco.front.action.EBAbstractAction;
import ar.utn.frgp.banco.service.GestionCuentasService;

/**
 * @author Jonni
 *
 */
public class ListarCuentasAction extends EBAbstractAction{

	
	/**
	 * 
	 */
	private static final long serialVersionUID = 5093997622042294621L;

	private List<Cuenta> cuentas;
	
	/**
	 * @return the cuentas
	 */
	public List<Cuenta> getCuentas() {
		return cuentas;
	}

	/**
	 * @param cuentas the cuentas to set
	 */
	public void setCuentas(List<Cuenta> cuentas) {
		this.cuentas = cuentas;
	}

	/**
	 * @return the gestionCuentasService
	 */
	public GestionCuentasService getGestionCuentasService() {
		return gestionCuentasService;
	}

	/**
	 * @param gestionCuentasService the gestionCuentasService to set
	 */
	public void setGestionCuentasService(GestionCuentasService gestionCuentasService) {
		this.gestionCuentasService = gestionCuentasService;
	}

	private GestionCuentasService gestionCuentasService;
		
	/* (non-Javadoc)
	 * @see ar.utn.frgp.banco.front.action.EBAbstractAction#execute()
	 */
	@Override
	public String execute() throws PersonalisedException {
		// TODO Auto-generated method stub
		
		if(cuentas == null){
			cuentas = gestionCuentasService.obteneCuentas(getLoggedUser().getDni());
			
			if (cuentas.isEmpty()){
				return NONE;
			}
		}
		
		return INPUT;
	}

}
